出处:掘金

原作者:某某某人


帧动画

帧动画是一种通过连续展示一系列静态图像(帧)来模拟运动或变化的动画类型。这与传统电影的原理相似,即通过快速播放一连串的单独帧来创造视觉上的连续运动感

实现方案

开发成本

使用图片类资源,一般不需要开发,或者通过 CSS、JS 简单编码即可实现

动态交互性

在代码层面上,一般控制播放与暂停,实时的交互性较为有限

性能

CPU:

GPU:

内存:

FPS(帧率):

属性动画

属性动画一般是通过位移、旋转、缩放、斜切、透明度变化的简单动画,这类动画就不需要通过序列帧来实现,而是通过拆解整个动画为一个个单独的元素,每个元素再做单独的属性动画

实现方案

开发成本

这类动画效果可以较为简单,也可以极其复杂,这个与开发难度和投入的时间强关联

动态交互性

可以很容易地通过事件和回调函数与用户互动,动态调整动画进程和属性

性能

CPU:

GPU:

内存:

FPS(帧率):

3D 动画

实现方案

开发成本

3D 动画通常需要使用 WebGL 或基于 WebGL 的库(如 Three.js),这要求开发者对 3D 编程有较深的理解

动态交互性

可以实现高度的交互,但要同时处理 3D 模型、视图、光照等方面的变化,编码工作相对复杂

性能

高度依赖 GPU,对 CPU 影响相对较小(除了初始化和物理计算等方面)。内存消耗取决于场景复杂性。FPS 会受到硬件能力和场景优化程度的影响,对编码优化和资源管理的要求较高